package cn.sskxyz.security.authorization.dao;

import cn.sskxyz.mybatis.mode.Page;
import cn.sskxyz.security.authorization.model.Oauth2Client;
import cn.sskxyz.security.authorization.model.SecurityService;
import cn.sskxyz.security.authorization.web.args.ClientInfoArgs;

import java.util.List;

public interface Oauth2ClientDao {

    Oauth2Client loadClientByClientId(String clientId);

    String selectClientScopeFromService(String clientId);

    String selectClientAuthorityFromService(String clientId);

    List<Oauth2Client> selectClientList(Page page);

    void insertSingleClient(ClientInfoArgs clientInfo);

    void updateClient(ClientInfoArgs clientInfo);

    List<SecurityService> selectAccessableService(String clientId);
}
